package com.fjsh;

import com.codingapi.txlcn.tc.config.EnableDistributedTransaction;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.openfeign.EnableFeignClients;

/**
 * 此系统纯粹业务系统，技术点即结合开源项目LCN作为分布式事务的解决方案
 * lcn的集群只需要让各个TxManager连接的mysql和redis是一样的就可以了。但是需要对mysql和redis进行集群搭建，否则mysql或者redis挂了的话，LCN也就挂了
 *
 * 客户端配置文件需要配置tx-lcn.client.manager-address=127.0.0.1:8090,127.0.0.1:8091
 * 有兴趣的可以查看lcn相关知识，使用方式只需要引入相应依赖并通过@EnableDistributedTransaction开启lcn事务管理，业务逻辑正常使用事务注解即可
 */
@EnableFeignClients
@EnableDiscoveryClient
@SpringBootApplication
@EnableDistributedTransaction//分布式事务启动注解
@MapperScan(basePackages = "com.fjsh.mapper")
public class SystemApplication {

    public static void main(String[] args) {
        SpringApplication.run(SystemApplication.class,args);
    }

}
